﻿Imports System.Reflection

Namespace Save

    ''' <summary>
    ''' 保存定義クラス
    ''' </summary>
    ''' <remarks></remarks>
    Public Class SaveDefinition

        Friend Sub New()
        End Sub

        Private _saveType As SaveType
        ''' <summary>
        ''' 保存種別
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property SaveType As SaveType
            Get
                Return _saveType
            End Get
            Friend Set(value As SaveType)
                _saveType = value
            End Set
        End Property

        Private _tableAttribute As TableAttribute
        ''' <summary>
        ''' テーブル情報を示します
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property TableAttribute As TableAttribute
            Get
                Return _tableAttribute
            End Get
            Friend Set(value As TableAttribute)
                _tableAttribute = value
            End Set
        End Property

        Private _model As Object
        ''' <summary>
        ''' モデル
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property Model As Object
            Get
                Return _model
            End Get
            Friend Set(value As Object)
                _model = value
            End Set
        End Property

        Private _tableArchive As TableArchive
        ''' <summary>
        ''' テーブルアーカイブ
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property TableArchive As TableArchive
            Get
                Return _tableArchive
            End Get
            Friend Set(value As TableArchive)
                _tableArchive = value
            End Set
        End Property

        Public Overrides Function ToString() As String
            Return String.Format("{0} {1}", Me.SaveType.ToString, Me.TableArchive.ToString)
        End Function

    End Class

End Namespace

